package net.jielan188.hd.service.queue;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.core.MessageCreator;
import org.springframework.stereotype.Component;

import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.Session;

/**
 * 消息发送
 * Created by hgg on 2017-01-24.
 */
@Component
public class QueueSender {

    @Autowired
    @Qualifier("jmsQueueTemplate")
    private JmsTemplate jmsTemplate;//通过@Qualifier修饰符来注入对应的bean

    /**
     * 发送一条消息到指定的队列（目标）
     * @param queueName 队列名称
     * @param message 消息内容
     */
    public void send( String queueName,final String message ){
        jmsTemplate.send( queueName, new MessageCreator() {
            public Message createMessage( Session session ) throws JMSException {
                //可自定义实现推送消息类型
                return session.createTextMessage( message );
            }
        });
    }
}
